# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

EXPORTS += [
    'agnostic/AgnosticDecoderModule.h',
    'agnostic/OpusDecoder.h',
    'agnostic/TheoraDecoder.h',
    'agnostic/VorbisDecoder.h',
    'agnostic/VPXDecoder.h',
    'PDMFactory.h',
    'PlatformDecoderModule.h',
    'wrappers/FuzzingWrapper.h',
    'wrappers/H264Converter.h'
]

SOURCES += [
    'agnostic/AgnosticDecoderModule.cpp',
    'agnostic/BlankDecoderModule.cpp',
    'agnostic/OpusDecoder.cpp',
    'agnostic/TheoraDecoder.cpp',
    'agnostic/VorbisDecoder.cpp',
    'agnostic/VPXDecoder.cpp',
    'agnostic/WAVDecoder.cpp',
    'PDMFactory.cpp',
    'wrappers/FuzzingWrapper.cpp',
    'wrappers/H264Converter.cpp'
]

DIRS += [
    'agnostic/gmp',
    'omx'
]

if CONFIG['MOZ_EME']:
    DIRS += ['agnostic/eme']

if CONFIG['MOZ_WMF']:
    DIRS += [ 'wmf' ];

if CONFIG['MOZ_FFVPX'] or CONFIG['MOZ_FFMPEG']:
    # common code to either FFmpeg or FFVPX
    SOURCES += [
        'ffmpeg/FFmpegLibWrapper.cpp',
    ]

if CONFIG['MOZ_FFVPX']:
    DIRS += [
        'ffmpeg/ffvpx',
    ]

if CONFIG['MOZ_FFMPEG']:
    DIRS += [
        'ffmpeg',
    ]

if CONFIG['MOZ_AV1']:
    EXPORTS += [
        'agnostic/AOMDecoder.h',
    ]
    SOURCES += [
        'agnostic/AOMDecoder.cpp',
    ]

if CONFIG['MOZ_APPLEMEDIA']:
  EXPORTS += [
      'apple/AppleDecoderModule.h',
  ]
  SOURCES += [
      'apple/AppleATDecoder.cpp',
      'apple/AppleCMLinker.cpp',
      'apple/AppleDecoderModule.cpp',
      'apple/AppleVTDecoder.cpp',
      'apple/AppleVTLinker.cpp',
  ]
  OS_LIBS += [
      '-framework AudioToolbox',
  ]

include('/ipc/chromium/chromium-config.mozbuild')

FINAL_LIBRARY = 'xul'

if CONFIG['GNU_CXX']:
    CXXFLAGS += ['-Wno-error=shadow']
